/*
 * @Author: c
 * @Date: 2024-02-06 10:39:42
 * @LastEditTime: 2024-03-16 13:00:58
 * @LastEditors: c
 * @Description: 
 * @FilePath: \music-web-backend\src\core\music\home\dao\home.dao.ts
 * https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */
// Copyright 2024 Administrator
// 
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// 
//     http://www.apache.org/licenses/LICENSE-2.0
// 
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

import { Injectable } from "@nestjs/common";
import { InjectRepository } from "@nestjs/typeorm";
import { MinioClientService } from "src/core/system/minio/minio.service";
import { DataSource, Repository } from "typeorm";
import { Index } from "../entities/home.entity";
import { IHome } from "../interface/home.interface";

@Injectable()
export class DHome implements IHome {


    constructor(
        @InjectRepository(Index) private homeRepository: Repository<Index>,
        private dataSource: DataSource,
        private minioClientService: MinioClientService,
    ) { }



    async page(): Promise<Index[]> {
        const build = await this.homeRepository
            .createQueryBuilder("index")
            .select([
                'index.id',
                'index.type',
                'index.moduleName',
                'index.moreApi',
            ])
            .orderBy("index.createTime", 'ASC')
            
      
        const data = await build.getMany();

        return data
    }


}